设置使用 SSL/TLS GlusterFS
GlusterFS 允许其通讯,使用 传输层进行保护 安全 标准 (其中取代安全套接字层),使用 [] OpenSSLossl 图书馆。 此设置需要的基本的工作知识
SSL/TLS 的一些概念,可以只简要地概括在这里。
*"身份验证"是一个实体的过程 (例如机,过程,或 人) 向第二个实体证明其身份。
*"授权"是检查实体是否具有权限的过程 若要执行的操作。
- TLS 提供身份验证和加密。 它不提供
授权,虽然 GlusterFS 可以使用 TLS 身份验证身份 授权客户端连接到砖/卷。
- 必须相互验证到 Y 的第二个实体的实体 X 这样的分享 与 Y * 证书 *,包含信息足以证明 X 标识。 X 的身份证明也需要拥有 * 私人密钥 *
与相匹配的证书,但此密钥从未见过的 Y 或任何人 其他。 因为证书已经是公开的任何人拥有关键可以
声称这种身份。
- 每个证书包含其主体 (所有者) 的标识相处 身份 * 认证权威 * 或 CA 可以验证的完整性的人 证书的内容。 校长和 CA 可以是 (a 相同
"自签名的证书")。 如果它们不同,CA 必须 * 标志 *
通过附加信息取自两个证书的证书 内容和 CA 的私钥。
证书签名的关系可以通过多个水平扩展。 为
示例中,X 公司能签另一公司 Y 的证书,可以 然后用于签署第三证书 Z 为特定的用户或用途。 任何人如果相信 X (和愿意提供这种信任通过 * 证书深度 * 两个或更多) 因此将能够通过身份验证 Y 和 Z 一样好。
- 任何实体愿意接受其他实体的身份验证尝试必须 有某种数据库种子已经接受的证书。
在 GlusterFS 的情况下,客户端或服务器 X 使用以下文件来包含 TLS 相关信息︰
-
/etc/ssl/glusterfs.pem X 自己的证书
-
/etc/ssl/glusterfs.key X 的私钥
-
/etc/ssl/glusterfs.ca 串联的 * 别人的 * 证书
GlusterFS 总是执行 * 相互身份验证 *,虽然客户不做 目前做任何事情的经过身份验证的服务器身份。 因此,如果客户机 X
想要传达与服务器 Y,然后 X (或签名) 的证书 必须在 Y 的 CA 文件,反之亦然。
为所有的 TLS 在 GlusterFS,如果一侧的连接配置为使用 使用 TLS,然后另一侧也必须使用它。 有是没有自动回退
非 TLS 通信,或并发 TLS 和非 TLS 访问津贴 相同的资源,因为将会没有安全感。 相反,任何此类"混合
模式"连接将被拒绝使用 TLS 的身边,牺牲 保持安全的可用性。
# 启用 TLS 对 I/O 路径
要启用身份验证和加密客户端和砖服务器,两个之间 必须设置选项︰
gluster 卷上设置 MYVOLUME client.ssl gluster 卷上设置 MYVOLUME server.ssl
请注意,上面的选项中影响只有 GlusterFS 本机协议。 外国
如 NFS、 SMB 或 Swift 协议将不受影响。
# 使用 TLS 身份授权
一旦上 I/O 路径已启用 TLS,可以使用 TLS 身份,而不是 IP 地址或平原的用户名来控制对特定卷的访问。 为
示例︰
gluster 卷集 MYVOLUME auth.ssl 允许赞
在这里,我们允许 TLS 身份验证的身份"赞"来访问 MYVOLUME。 这是与现有的"auth.allow"选项,除非故意相同 该名称是取自 TLS 证书而不是命令行的字符串。 注意
在 gluster CLI 不足妨碍使用名称包含空格, 否则,将被允许。
# 启用 TLS 管理路径
交通管理守护进程不是由一个选项控制的。 相反,它是
控制每台机器上的文件的存在︰
/var/lib/glusterd/secure-access
创建此文件将导致由那台机器使用的 glusterd 连接 TLS。 请注意,即使客户端必须这样做是为了沟通远程 glusterd
同时安装,但没有音讯。
# 附加选项
GlusterFS TLS 实现支持 tls 与相关的两个附加选项 塔内件。
第一个选项允许用户设置证书深度,所述 以上。
gluster 音量设置 MYVOLUME ssl.cert-深度 2
在这里,我们正在将我们证书深度设置为两个,在介绍性 示例。 默认情况下此值是零,也就是说,只有证书,
直接指定本地 CA 文件会被接受 (即没有签署 证书在所有)。
第二个选项允许用户指定一组允许 TLS 密码。
gluster 音量设置 MYVOLUME ssl.cipher 列表 ' 高: !SSLv2'
密码列表是双方之间谈判两到 TLS 连接所以 双方的安全需要得到满足。 在此示例中,我们将
高初始密码列表,表示密码,密码学 社会仍然认为完好如初。 我们在还明确不允许
密码具体到 SSL 版本 2。 默认值基于这个例子,但
也不包括基于 CBC 密码模式提供额外缓 贵宾犬 攻击。